package me.kagami.gsp.service;


import com.intellij.openapi.project.Project;
import com.intellij.psi.PsiClass;
import com.intellij.psi.PsiLocalVariable;
import com.intellij.psi.PsiMethod;

import java.util.HashSet;
import java.util.Set;

public class GenerateContext {
    private final PsiLocalVariable localVariable;
    private final Project project;
    private final PsiClass psiClass;
    private final String splitText;
    private final Set<String> newImportList = new HashSet<>();
    private final StringBuilder builder = new StringBuilder();
    private PsiMethod method;

    public GenerateContext(PsiLocalVariable localVariable, Project project, PsiClass psiClass, String splitText) {
        this.localVariable = localVariable;
        this.project = project;
        this.psiClass = psiClass;
        this.splitText = splitText;
    }

    public PsiLocalVariable getLocalVariable() {
        return localVariable;
    }

    public Project getProject() {
        return project;
    }

    public PsiClass getPsiClass() {
        return psiClass;
    }

    public String getSplitText() {
        return splitText;
    }

    public Set<String> getNewImportList() {
        return newImportList;
    }

    public StringBuilder getBuilder() {
        return builder;
    }

    public PsiMethod getMethod() {
        return method;
    }

    public void setMethod(PsiMethod method) {
        this.method = method;
    }
}